import re


punc_sub_pat = re.compile('[^\u4e00-\u9fa5a-zA-Z0-9]')
punc_sub_mask_digit_pat = re.compile('[^\u4e00-\u9fa5a-zA-Z]')
def mask_punctuation(w, mask_digit=False):
    if mask_digit:
        return punc_sub_mask_digit_pat.sub(" ",w)
    else:
        return punc_sub_pat.sub(" ", w)


space_pat = re.compile("\s+")
def space_split(w):
    return space_pat.split(w.strip())


def punc_split(w, mask_digit=False):
    w = mask_punctuation(w, mask_digit)
    sp = space_split(w)
    return sp


if __name__ == "__main__":
    print(punc_split("我爱你 爱你 。dfaskl ，。 1234 哈哈", mask_digit=True))
    print(punc_split("我爱你 爱你 。dfaskl ，。 1234 哈哈", mask_digit=False))
